#include "config.h"

const S_CONFIG config_dft=
{
	1, //u32 id; //唯一ID 
}; //默认配置
S_CONFIG config; //当前配置

void cfg_load(void) //从flash读取配置到当前配置
{
	S_CONFIG *p=(S_CONFIG*)av_flash_read(); //从均匀擦写Flash中读取配置
	if(p==0)//若没有存储配置
	{
		//给默认配置
		config=config_dft;
		return ;
	}
	config=*p;
}
int cfg_save(void) //将当前配置保存
{
	S_CONFIG *p;
	int i;
	av_flash_write((u16*)&config,sizeof(config));
	p=(S_CONFIG*)av_flash_read(); //从均匀擦写Flash中读取配置
	if(p==0) return 1; //若没有存储配置
	//检验是否正确
	for(i=0;i<sizeof(config);i++)
	{
		if(((u8*)&config)[i]!=((u8*)p)[i])
		{
			return 2;
		}
	}
	return 0;
}

